STM32 I2S 总线简介
I2S 总线简介
I2S(Inter—IC Sound)总线是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准,该总线专责于音频设备之间的数据传输,广泛应用于各种多媒体系统
I2S总线规范
I2S总线拥有三条数据信号线:
- SCK: (continuous serial clock) 串行时钟
- WS: (word select) 字段(声道)选择
- SD: (serial data) 串行数据
对于系统而言,产生SCK和WS的信号端就是主设备。
1、SCK: (continuous serial clock) 串行时钟
对应数字音频的每一位数据,SCK 都有 1 个脉冲。SCK 的频率=2×采样频率×采样位数。
2、WS: (word select) 字段(声道)选择用于切换左右声道的数据。
WS 的频率=采样频率。命令选择线表明了正在被传输的声道。
WS 为“1”表示正在传输的是右声道的数据。
WS 为“0”表示正在传输的是左声道的数据。
3、SD: (serial data) 串行数据
用二进制补码表示的音频数据。 I2S 格式的信号无论有多少位有效数据,数据的
最高位总是被最先传输(在 WS 变化(也就是一帧开始)后的第 2 个 SCK 脉冲处),因此最
高位拥有固定的位置,而最低位的位置则是依赖于数据的有效位数。
4、MCLK:主时钟,也叫系统时钟(System Clock)
有时为了使系统间能够更好的同步,还需要另外传输一个信号MCLK,称为,是采样频率的 256 或 384 倍STM32 的 SPI 和 IIS 共用。
IIS 接口初始化
在简单的 IO 口初始化后,调用库函数跟其他偏上外设一样进行 IIS 总线工作模式的配置。将 I2S 总线设置为主机发送、16 位左对齐、主机模式、采样频率是 44K。
I2S采样和处理过程
模拟信号—>采样—>量化—>编码—>数字信号